package org.example.contract.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.example.product.domain.Product;

/**
 * 合同产品表对象 b_contract_product
 *
 * @author heeenlin
 * @date 2024-04-12
 */
public class ContractProduct extends Product
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long contractProductId;

    /** 合同ID */
    @Excel(name = "合同ID")
    private String contractId;

    private String contractCode;

    /** 产品ID */
    @Excel(name = "产品ID")
    private Long productId;

    /** 价格 */
    @Excel(name = "价格")
    private BigDecimal price;

    /** 数量 */
    @Excel(name = "数量")
    private Integer num;

    /** 使用数量 */
    @Excel(name = "使用数量")
    private Integer useNum;

    /** 剩余数量 */
    @Excel(name = "剩余数量")
    private Integer remainNum;

    private Integer operationNum;



    public Integer getOperationNum() {
        return operationNum;
    }

    public void setOperationNum(Integer operationNum) {
        this.operationNum = operationNum;
    }

    public String getContractCode() {
        return contractCode;
    }

    public void setContractCode(String contractCode) {
        this.contractCode = contractCode;
    }

    public void setContractProductId(Long contractProductId)
    {
        this.contractProductId = contractProductId;
    }

    public Long getContractProductId()
    {
        return contractProductId;
    }
    public void setContractId(String contractId)
    {
        this.contractId = contractId;
    }

    public String getContractId()
    {
        return contractId;
    }
    public void setProductId(Long productId)
    {
        this.productId = productId;
    }

    public Long getProductId()
    {
        return productId;
    }
    public void setPrice(BigDecimal price)
    {
        this.price = price;
    }

    public BigDecimal getPrice()
    {
        return price;
    }
    public void setNum(Integer num)
    {
        this.num = num;
    }

    public Integer getNum()
    {
        return num;
    }
    public void setUseNum(Integer useNum)
    {
        this.useNum = useNum;
    }

    public Integer getUseNum()
    {
        return useNum;
    }
    public void setRemainNum(Integer remainNum)
    {
        this.remainNum = remainNum;
    }

    public Integer getRemainNum()
    {
        return remainNum;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("contractProductId", getContractProductId())
            .append("contractId", getContractId())
            .append("productId", getProductId())
            .append("price", getPrice())
            .append("num", getNum())
            .append("useNum", getUseNum())
            .append("remainNum", getRemainNum())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("remark", getRemark())
            .toString();
    }
}
